Encoding processing method and device, decoding processing method and device, encoder, and decoder

ABSTRACT

Disclosed are an encoding processing method and device, a decoding processing method and device, an encoder and a decoder. The encoding processing method includes: determining a filtering process to be applied to a pixel in a prediction reference block for an encoding block; filtering the pixel in the prediction reference block according to the filtering process; constructing a pixel prediction value for the encoding block according to a filtered pixel sampling value in the prediction reference block; and encoding the encoding block according to the pixel prediction value.

TECHNICAL FIELD

The present application relates to, but is not limited to, the field ofcommunications, and in particular, relates to an encoding processingmethod and device, a decoding processing method and device, an encoderand a decoder.

BACKGROUND

In the screen content coding (SCC) standard which is being establishedbased on extensions of the H.265/high efficiency video coding (HEVC)standard, an intra block copying (IBC) mode is adopted. The IBC uses areconstructed two-dimensional pixel block in the current picture as aprediction reference block for the current block. Furthermore, the IBCuses a relative offset between the prediction reference block and thecurrent block to locate the prediction reference block. The offset maybe called a block copying vector (BV). In a decoding process specifiedby the SCC standard, the IBC mode is incorporated into an interprediction mode by placing a current decoding picture into a referencepicture list and by using a data processing flow and a parameter codingmode of the inter prediction based on the H.265/HEVC standard. When areference picture index (refIdx) of a decoding block using the interprediction points to a current decoding picture, the decoding block usesthe IBC mode. At this time, a motion vector (MV) corresponding to thedecoding block and used for identifying the relative offset between thecurrent decoding block and the prediction reference block in thereference picture is used as the BV of the IBC mode.

To further improve the compression coding efficiency and subjectivequality, H.264/advanced video coding (AVC) introduces a deblockingfilter (DF) into a prediction compensation loop of the inter prediction.H.265/HEVC inherits this design, and adds a sample adaptive offset (SAO)filter behind the DF in a cascading manner. The DF and the SAO form aloop filtering process in the H.265/HEVC standard. The inter predictioncoding efficiency and the subjective quality of the conventional interprediction mode are greatly improved by using the DF and the loopfiltering.

SUMMARY

The following is a summary of the subject matter described in detail inthe preset disclosure. This summary is not intended to limit the scopeof the claims.

The IBC mode is combined with the inter prediction mode. As in theconventional intra prediction mode, a pixel sampling value in theprediction reference block in the IBC mode is not processed by anin-loop filtering process, so the in-loop filtering process is not usedto improve the prediction loop of the IBC. Furthermore, quantizationdistortion such as blockiness also directly affects the predictionefficiency of the IBC mode.

The present disclosure provides an encoding processing method anddevice, a decoding processing method and device, an encoder and adecoder, to solve the problem in the related art that no filteringprocess is performed on the picture in the IBC mode and thus theprediction efficiency of the IBC is low.

An encoding processing method is provided and includes: determining afiltering process to be applied to a pixel in a prediction referenceblock for an encoding block; filtering the pixel in the predictionreference block according to the filtering process; constructing a pixelprediction value for the encoding block according to a filtered pixelsampling value in the prediction reference block; and encoding theencoding block according to the pixel prediction value.

In an exemplary embodiment, the step of determining the filteringprocess to be applied to the pixel in the prediction reference block forthe encoding block includes: determining a filtering mode to be appliedto the filtering process and a filtering parameter to be applied to thefiltering process.

In an exemplary embodiment, the step of determining the filtering modeand the filtering parameter to be applied to the filtering processincludes:

determining the filtering mode and the filtering parameter according toat least one of the following information for determining a filteringprocess parameter: encoding parameter information of an encoded block, apart of or all of reconstructed pixel sampling values of a picture inwhich the prediction reference block is located, and a part of or all ofpixel sampling values of a picture in which the encoding block islocated.

In an exemplary embodiment, the method further includes:

selecting a filter for performing the filtering process from a filterset, setting parameter information indicating the selected filter as acorresponding parameter of the filtering mode;

determining a filter parameter of the selected filter, settinginformation indicating the determined filter parameter as acorresponding parameter of the filtering parameter, where the filter setincludes at least one of the following filter banks:

a filter whose shape and filter parameter are preset;

a filter whose filter shape is preset and whose filter parameter isdetermined according to the information for determining the filteringprocess parameter;

a filter determined according to the information for determining thefiltering process parameter, the filter parameter of the filter ispreset;

a filter whose shape and filter parameter are determined according tothe information for determining the filtering process parameter;

a filter using a filter shape and a filter parameter of an encodedblock; and

a filter using the filter shape of the encoded block, and using thefilter parameter determined according to the information for determiningthe filtering process parameter.

In an exemplary embodiment, the method further includes: writing thecorresponding parameter of the filtering mode and the correspondingparameter of the filtering parameter into a bitstream.

In an exemplary embodiment, the step of determining the filtering modeto be applied to the filtering process and the filtering parameter to beapplied to the filtering process includes: determining the filteringmode and the filtering parameter used by the prediction reference blockcorresponding to the encoding block by using an encoded pixel samplevalue in combination with the encoding parameter information of theencoded block.

In an exemplary embodiment, the step of filtering the pixel in theprediction reference block according to the filtering process includes:

filtering one or more components of the pixel of the predictionreference block according to the determined filtering process.

In an exemplary embodiment, the step of constructing the pixelprediction value according to the pixel sampling value in the predictionreference block processed by the filtering process includes:

taking the pixel sampling value as the pixel prediction value; or

taking a weighted sum of a plurality of pixel sampling values as thepixel prediction value.

In an exemplary embodiment, the step of constructing the pixelprediction value according to the pixel sampling value in the predictionreference block processed by the filtering process includes:

linearly processing the pixel sampling value or a weighted sum of aplurality of pixel sampling values by using a multiplicative factorand/or an additive offset, and taking the linearly processed pixelsampling value as the pixel prediction value.

In an exemplary embodiment, before constructing the pixel predictionvalue according to the pixel sampling value, the method furtherincludes:

determining a position of the prediction reference block.

In an exemplary embodiment, when the filtering mode indicates that thepixel in the prediction reference block is filtered by using a pluralityof cascaded filters, the pixel in the prediction reference block isfiltered in a set cascading order of the cascaded filters.

In an exemplary embodiment, the cascading order of the cascaded filtersincludes: a preset cascading order of the cascaded filters; or acascading order of the cascaded filters indicated by the filtering mode.

In an exemplary embodiment, the method further includes: determiningcontrol indication information in the filtering process, and writing thecontrol indication information into a bitstream.

In an exemplary embodiment, the control indication information iswritten into at least one of the following bitstreams: a parameter setbitstream; a slice header information bitstream; a bitstreamcorresponding to a block layer data unit where the encoding block islocated; a bitstream corresponding to a prediction block data unit inthe encoding block; a bitstream corresponding to user-defined data; anda bitstream corresponding to supplemental extension information data.

A decoding processing method is provided and includes: determining afiltering process to be applied to a pixel in a prediction referenceblock for a decoding block; processing a pixel sampling value in theprediction reference block by using the determined filtering process;and constructing a pixel prediction value for the decoding block byusing the processed pixel sampling value.

In an exemplary embodiment, before determining the filtering process tobe applied to the pixel in the prediction reference block for thedecoding block, the method further includes: obtaining positioninformation of the prediction reference block, where the positioninformation includes: a relative offset between the decoding block andthe prediction reference block and/or an index of a picture where theprediction reference block is located.

In an exemplary embodiment, the step of determining the filteringprocess to be applied to the pixel in the prediction reference blockincludes: determining a filtering mode to be employed by the filteringprocess and a filtering parameter to be applied to the filteringprocess.

In an exemplary embodiment, the method further includes: parsing abitstream, and obtaining a parameter indicating the filtering mode and afiltering parameter applied to indicating that the pixel in theprediction reference block is processed in the filtering mode accordingto a result of parsing.

In an exemplary embodiment, the method further includes: selecting afilter for performing the filtering process from a filter set accordingto the parameter of the filtering mode, and setting a filter parameterof the selected filter according to the filtering parameter, where thefilter set includes at least one of the following filter banks:

a filter using a preset shape and a preset filtering parameter;

a filter using a preset shape and the filtering parameter;

a filter using a shape indicated by the parameter of the filtering mode,and using a preset filter parameter;

a filter using a shape indicated by the parameter of the filtering modeand using the filter parameter indicated by the filtering parameter;

a filter using a filter shape and a filter parameter of a decoded block;and

a filter using the filter shape of the decoded block, and using thefilter parameter indicated by the filtering parameter.

In an exemplary embodiment, the step of determining the filtering modeto be applied to the filtering process and the filtering parameter to beapplied to the filtering process includes: determining the filteringmode and the filtering parameter used by the prediction reference blockcorresponding to the decoding block by using a decoded pixel samplevalue and decoding parameter information of a decoded block.

In an exemplary embodiment, the step of processing the pixel samplingvalue in the prediction reference block by using the determinedfiltering process includes:

filtering one or more components of the pixel in the predictionreference block according to the determined filtering process.

In an exemplary embodiment, the step of constructing the pixelprediction value by using the processed pixel includes:

taking the pixel sampling value as the pixel prediction value; or takinga weighted sum of a plurality of pixel sampling values as the pixelprediction value.

In an exemplary embodiment, the step of constructing the pixelprediction value by using the processed pixel includes:

linearly processing the pixel sampling value or a weighted sum of aplurality of pixel sampling values by using a multiplicative factorand/or an additive offset, and taking the linearly processed pixelsampling value as the pixel prediction value for the decoding block.

In an exemplary embodiment, when the filtering mode indicates that thepixel in the prediction reference block is filtered by using a pluralityof cascaded filters, the pixel in the prediction reference block isfiltered in a set cascading order of the cascaded filters, where the setcascading order of the cascaded filters is a preset cascading order ofthe cascaded filters, or a cascading order of the cascaded filtersindicated by the filtering mode.

In an exemplary embodiment, the method further includes: determiningcontrol indication information in the filtering process, and writing thecontrol indication information into at least one of the followingbitstreams:

a parameter set bitstream; a slice header information bitstream; abitstream corresponding to a block layer data unit where the decodingblock is located; a bitstream corresponding to a prediction block dataunit in the decoding block; a bitstream of user-defined data; and abitstream corresponding to supplemental extension information data.

An encoding processing device includes: a first determining module,which is configured to determine a filtering process to be applied to apixel in a prediction reference block for an encoding block; a filteringmodule, which is configured to filter the pixel in the predictionreference block according to the filtering process; a first constructingmodule, which is configured to construct a pixel prediction value forthe encoding block according to a filtered pixel sampling value in theprediction reference block; and an encoding module, which is configuredto encode the encoding block according to the pixel prediction value.

In an exemplary embodiment, the first determining module is configuredto determine a filtering mode to be applied to the filtering process anda filtering parameter to be applied to the filtering process.

In an exemplary embodiment, the first determining module is configuredto determine the filtering mode and the filtering parameter according toat least one of the following information for determining a filteringprocess parameter: encoding parameter information of an encoded block, apart or all of reconstructed pixel sampling values of a picture in whichthe prediction reference block is located, and a part or all of pixelsampling values of a picture in which the encoding block is located.

A decoding processing device includes: a second determining module,which is configured to determine a filtering process to be applied to apixel in a prediction reference block for a decoding block; a processingmodule, which is configured to process a pixel sampling value in theprediction reference block by using the determined filtering process;and a second constructing module, which is configured to construct apixel prediction value for the decoding block by using the processedpixel sampling value.

In an exemplary embodiment, the apparatus further includes:

an obtaining module, which is configured to obtain position informationof the prediction reference block, where the position informationincludes: a relative offset between the encoding block and theprediction reference block and/or an index of a picture where theprediction reference block is located.

In an exemplary embodiment, the second determining module is configuredto determine a filtering mode and a filtering parameter of the filteringprocess.

An encoder includes any encoding processing device described above.

A decoder includes any decoding processing device described above.

A computer-readable storage medium stores computer-executableinstructions. When executed by a processor, the instructions execute themethod described above.

According to the embodiments of the present disclosure, a predictionpixel value in an encoding block in an encoding picture is determined bya filtering process performed on a prediction reference blockcorresponding to the encoding block, and then the encoding block in theencoding picture is encoded. Thus, the above technical solution solvesthe problem in the related art that the picture is not filtered in theIBC mode and the prediction efficiency of the IBC mode is low, andimproves the encoding efficiency and encoding quality of the IBC mode.

Other aspects can be understood after the drawings and detaileddescription are read and understood.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a flowchart of an encoding processing method according to anembodiment of the present disclosure;

FIG. 2 is a structural diagram of an encoding processing deviceaccording to an embodiment of the present disclosure;

FIG. 3 is a structural diagram of a first constructing module 24 of theencoding processing device according to an embodiment of the presentdisclosure;

FIG. 4 is a flowchart of a decoding processing method according to anembodiment of the present disclosure;

FIG. 5 is a structural diagram of a decoding processing device accordingto an embodiment of the present disclosure;

FIG. 6 is another structural diagram of a decoding processing apparatusaccording to an embodiment of the present disclosure;

FIG. 7 is a flowchart of an encoding processing method according to anoptional embodiment 2 of the present disclosure; and

FIG. 8 is a flowchart of a method for constructing a predictionreference block for a decoding block in an inter slice according to anoptional embodiment 3 of the present disclosure.

DETAILED DESCRIPTION

Hereinafter the present disclosure will be described in detail withreference to the drawings in conjunction with the embodiments. It is tobe noted that if not in collision, the embodiments and features thereinin the present application may be combined with each other.

Additional features and advantages of the embodiments of the presetdisclosure will be set forth in the description which follows, and inpart will become apparent in the description, or may be learned bypractice of the embodiments of the present disclosure. The object andother advantages of the present application can be implemented andobtained through the structures especially indicated in the description,claims and drawings.

Technical solutions in embodiments of the present disclosure will bedescribed clearly and completely in conjunction with the drawings in theembodiments of the present disclosure. Apparently, the embodimentsdescribed herein are part, not all of the embodiments of the presentinvention. Based on the embodiments of the present disclosure, otherembodiments obtained by those of ordinary skill in the art withoutcreative work are within the scope of the present application.

An embodiment of the present disclosure further provides an encodingprocessing method. FIG. 1 is a flowchart of the encoding processingmethod according to the embodiment of the present disclosure. As shownin FIG. 1, the method includes the steps described below.

In step S102, a filtering process to be applied to a pixel in aprediction reference block for an encoding block is determined.

In step S104, the pixel in the prediction reference block is filteredaccording to the filtering process.

In step S106, a pixel prediction value for the encoding block isconstructed according to a pixel sampling value in the predictionreference block processed by the filtering process.

In step S108, the encoding block is encoded according to the pixelprediction value.

With the above steps in the technical solution, a filtering process isperformed on a prediction reference block for an encoding block in anencoding picture so as to determine a prediction pixel value in theencoding block, and further the encoding block in the encoding pictureis encoded. Thus, the prediction efficiency problem of the IBC mode inthe related art due to no filtering process performed on the picture issolved, and the encoding efficiency and encoding quality of the IBC modeare improved.

The encoding block described above is located in a picture to beencoded.

In an exemplary embodiment, the step of determining the filteringprocess to be applied to the pixel in the prediction reference block forthe encoding block in the encoding picture may be implemented bydetermining a filtering mode and a filtering parameter used in thefiltering process. The step of determining the filtering mode and thefiltering parameter may be implemented by determining the filtering modeand the filtering parameter according to at least one of the followinginformation for determining a filtering process parameter: encodingparameter information of an encoded block, a part or all ofreconstructed pixel sampling values of a picture in which the predictionreference block is located, and a part or all of pixel sampling valuesof a picture in which the encoding block is located.

An embodiment of the present disclosure further provides the followingtechnical solution. A filter for performing the filtering process isselected from a filter set, and parameter information indicating theselected filter is set to a corresponding parameter of the filteringmode; and a filter parameter of the selected filter is determined, andinformation of indicating the determined filter parameter is set to acorresponding parameter of the filtering parameter, which may beunderstood as that the filtering mode corresponds to the filter or theshape of the filter, and that the filtering parameter corresponds to thefilter parameter (such as a filter coefficient). In practice, thefiltering mode may correspond to a series of parameters, such as theindex number of the selected filter in the filter set. The filteringparameter may correspond to the filter coefficient, or may correspond toa parameter indicating the filter coefficient, such as indicating “usinga coefficient of a filter of a left neighboring block”.

The filter set includes at least one of the following filter banks:

a filter whose shape and filter parameter are preset;

a filter whose filter shape is preset and whose filter parameter isdetermined according to the information for determining the filteringprocess parameter;

a filter determined according to the information for determining thefiltering process parameter and using a preset filter parameter;

a filter whose shape and filter parameter are determined according tothe information for determining the filtering process parameter;

a filter using a filter shape and a filter parameter of an encodedblock; and

a filter using the filter shape of the encoded block, and using thefilter parameter determined according to the information for determiningthe filtering process parameter. After the filtering mode and thefiltering parameter are determined, the corresponding parameter of thefiltering mode and the corresponding parameter of the filteringparameter are written into a bitstream.

The process of determining the filtering mode and the filteringparameter may be implemented by the following solution: the filteringmode and the filtering parameter used by the prediction reference blockcorresponding to the encoding block are determined by using an encodedpixel sample value and the encoding parameter information of the encodedblock.

In an embodiment of the present disclosure, the step of constructing thepixel prediction value according to the pixel sampling value may betaking the pixel sampling value as the pixel prediction value; or takinga weighted sum of a plurality of pixel sampling values as the pixelprediction value.

In an alternative example, in the above-mentioned step S104, one or morecomponents of the pixel in the prediction reference block may befiltered according to the determined filtering process. Before the pixelprediction value is constructed according to the pixel sampling value,the method further includes: determining a position of the predictionreference block.

The step S106 may have multiple implementation modes. In an embodimentof the present disclosure, the step S106 may be implemented by: linearlyprocessing the pixel sampling value or a weighted sum of a plurality ofpixel sampling values by using a multiplicative factor and/or anadditive offset, and taking the linearly processed pixel sampling valueas the pixel prediction value.

The linear processing includes the following possible operations.

The used linear operation is y=ax+b. This linear operation has threesituations. In a case where a is 1, only the additive offset b is used.In a case where b is 0, only the multiplicative factor a is used.Otherwise, both of the multiplicative factor and additive offset areused.

For a data x being weighted, two cases exist. (1) x=one value; and (2)x=sum(a(i)*x(i)). All combinations of the three cases of the linearoperation and the two cases of the x need to be summarized.

The above-mentioned technical solution is further improved by anembodiment of the present disclosure, as described below. The filter forperforming the filtering process is selected from a filter set accordingto the parameters of the filtering mode, and the parameter of theselected filter is set according to the filtering parameter, where thefilter set includes at least one of the filter banks.

a filter using a preset shape and a preset filtering parameter;

a filter using a preset shape and the above filtering parameter;

a filter whose shape is indicated by the parameter of the filtering modeand using a preset filter parameter;

a filter using the shape indicated by the parameter of the filteringmode and using the filter parameter indicated by the filteringparameter;

a filter using a filter shape and a filter parameter of a decoded block;and

a filter using the filter shape of a decoded block, and using the filterparameter indicated by the filtering parameter.

In an exemplary embodiment, when multiple filters are used, the pixel inthe prediction reference block is filtered by the multiple filters in apreset sequence.

In an alternative example, the method further includes: determiningcontrol indication information in the filtering process, and writing thecontrol indication information into a bitstream, and thereby writing thecontrol indication information into a bitstream corresponding to abitstream organizational unit in a group including at least one of: aparameter set bitstream; a slice header information bitstream; abitstream corresponding to a block layer data unit where the encodingblock is located; a bitstream corresponding to a prediction block dataunit in the encoding block; a bitstream corresponding to user-defineddata; and a bitstream corresponding to supplemental extensioninformation data.

It is to be noted that for simple description, the foregoing methodembodiments are all expressed as a series of action combinations.However, those skilled in the art should understand that the embodimentsof the present disclosure are not limited by the described actionsequences, and according to the embodiments of the present disclosure,some steps may be performed in other sequences or concurrently. It isalso to be understood by those skilled in the art that the embodimentsdescribed herein are optional embodiments and that the actions andmodules involved are optional for the present application.

An embodiment of the present disclosure further provides an encodingprocessing device for implementing the above-mentioned embodiments andoptional embodiments. What has been described will not be repeated.Modules involved in the device will be described below. As used below,the term “module” may be software, hardware or a combination thereofcapable of implementing predetermined functions. The device describedbelow in the embodiment may be implemented by software, butimplementation by hardware or by a combination of software and hardwareis also possible and conceived. FIG. 2 is a structural diagram of theencoding processing device according to the embodiment of the presentdisclosure. As shown in FIG. 2, the device includes: a first determiningmodule 20, a filtering module 22, a first constructing module 24, and afirst processing module 26.

The first determining module 20 is configured to determine a filteringprocess to be applied to a pixel in a prediction reference block for anencoding block.

The filtering module 22 is connected to the first determining module 20,and is configured to filter the pixel in the prediction reference blockaccording to the filtering process.

The first constructing module 24 is connected to the filtering module22, and is configured to construct a pixel prediction value for theencoding block according to a pixel sampling value in the predictionreference block processed by the filtering process.

The first processing module 26 is connected to the first constructingmodule 24, and is configured to encode the encoding block according tothe pixel prediction value.

Through a comprehensive effect of the above modules, a filtering processis performed on a prediction reference block for an encoding block in anencoding picture, and thereby a prediction pixel value in the encodingblock is determined, and further the encoding block in the encodingpicture is encoded. Thus, the technical solution solves the problem inthe related art that no filtering process is performed on the picture inthe IBC mode and the prediction efficiency of the IBC mode is low, andimproves the encoding efficiency and encoding quality of the IBC mode.

In an exemplary embodiment, the first determining module 20 isconfigured to determine a filtering mode applied to the filteringprocess and a filtering parameter applied to the filtering process. Thefirst determining module 20 is configured to determine the filteringmode and the filtering parameter according to at least one of thefollowing information for determining a filtering process parameter:encoding parameter information of an encoded block, a part or all ofreconstructed pixel sampling values of a picture in which the predictionreference block is located, and a part or all of pixel sampling valuesof a picture in which the encoding block is located.

FIG. 3 is a structural diagram of the first constructing module 24 ofthe encoding processing device according to the embodiment of thepresent disclosure. The first constructing module 24 includes: a firstdetermining unit 240, which is configured to take the pixel samplingvalue as the pixel prediction value; or a second determining unit 242,which is configured to take a weighted sum of a plurality of pixelsampling values as the pixel prediction value.

In addition to the above-mentioned technical solution, an embodiment ofthe present disclosure further provides a decoding processing method.FIG. 4 is a flowchart of the decoding processing method according to theembodiment of the present disclosure. As shown in FIG. 4, the methodincludes the steps described below.

In step S402, a filtering process to be applied to a pixel in aprediction reference block for a decoding block is determined.

In step S404, a pixel sampling value in the prediction reference blockis processed by using the determined filtering process.

In step S406, a pixel prediction value for the decoding block isconstructed by using the processed pixel sampling value.

With the above steps, a filtering process is performed on a predictionreference block for a decoding block in a decoding picture, and therebya prediction pixel value in the decoding block where the predictionreference block is located is determined, and further the decoding blockin the decoding picture is decoded. Thus, the technical solution solvesthe problem, in the related art, that no filtering process is performedon the picture in the IBC mode and the prediction efficiency of the IBCmode is low, and improves the decoding efficiency and decoding qualityof the IBC mode.

In an optional example, before the filtering process to be applied tothe pixel in the prediction reference block for the decoding block isdetermined, the method further includes obtaining position informationof the prediction reference block. The position information includes: arelative offset between the decoding block and the prediction referenceblock and/or an index of a picture where the prediction reference blockis located.

In an exemplary embodiment, the step of obtaining the positioninformation and/or shape information of the prediction reference blockincludes: parsing a received video bitstream, and obtaining, accordingto a result of the parsing, a parameter indicating the filtering modeand a filtering parameter applied to processing the pixel in theprediction reference block according to the filtering mode.

In an exemplary embodiment, the step of determining the filteringprocess applied to the pixel in the prediction reference block for thedecoding block in the decoding picture may be implemented by determininga filtering mode applied to the filtering process and a filteringparameter applied to the filtering process.

The filtering mode and the filtering parameter applied to the filteringprocess may be determined by the following technical solution: thefiltering mode and the filtering parameter are determined according toat least one of: preconfigured decoding information, and a part or allof the reconstructed pixel sampling values of a decoding picture.

The above-mentioned step S404 may be implemented by the followingsolution: the pixel sampling value is taken as the pixel predictionvalue; or a weighted sum of a plurality of pixel sampling values istaken as the pixel prediction value.

In an exemplary embodiment, the above-mentioned method further includes:selecting a filter for performing the filtering process from a filterset according to the parameter of the filtering mode, and setting aparameter of the selected filter according to the filtering parameter.The filter set includes at least one of the following filter banks: afilter using a preset shape and a preset filtering parameter; a filterusing the preset shape and the filtering parameter; a filter using ashape indicated by the parameter of the filtering mode and a filterusing a preset filter parameter corresponding to the filter; a filterusing the shape indicated by the parameter of the filtering mode, and afilter using the filter parameter indicated by the filtering parameter;a filter using a filter shape and a filter parameter of a decoded block;and a filter using the filter shape of the decoded block and using thefilter parameter indicated by the filtering parameter.

In an exemplary embodiment, the filtering mode and the filteringparameter used by the prediction reference block corresponding to theencoding block are determined by using a decoded pixel sample value anddecoding parameter information of a decoded block.

The above-mentioned S404 is implemented in an optional example in thefollowing manner: one or more components of the pixel in the predictionreference block are filtered according to the determined filteringprocess.

In an optional example, when a plurality of filters are used, the pixelin the prediction reference block is filtered in a preset sequence,control indication information in the filtering process is determined,and the control indication information is written into a bitstream. Inthe embodiment of the present disclosure, the control indicationinformation in the filtering process is determined by parsing abitstream corresponding to a bitstream organizational unit, thebitstream includes at least one of: a parameter set bitstream, a sliceheader information bitstream, a bitstream corresponding to a block layerdata unit where the decoding block is located, a bitstream correspondingto a prediction block data unit in the decoding block, a bitstream ofuser-defined data, and a bitstream corresponding to supplementalextension information data.

An embodiment of the present disclosure further provides a decodingprocessing device for implementing the above-mentioned embodiments andoptional embodiments. What has been described will not be repeated.Modules involved in the device will be described below. As used below,the term “module” may be software, hardware or a combination thereofcapable of implementing predetermined functions. The device describedbelow in the embodiment may be implemented by software, butimplementation by hardware or by a combination of software and hardwareis also possible and conceived. FIG. 5 is a structural diagram of adecoding processing device according to an embodiment of the presentdisclosure. As shown in FIG. 5, the device includes: a seconddetermining module 50, a second processing module 52, and a secondconstructing module 54.

The second determining module 50 is configured to determine a filteringprocess to be applied to a pixel in a prediction reference block for adecoding block.

The second processing module 52 is connected to the second determiningmodule 50, and is configured to process a pixel sampling value in theprediction reference block by using the determined filtering process.

The second constructing module 54 is connected to the second processingmodule 52, and is configured to construct a pixel prediction value forthe encoding block by using the processed pixel sampling value.

Through a comprehensive effect of the above modules, a filtering processis performed on a prediction reference block for a decoding block in adecoding picture, and thereby a prediction pixel value in the decodingblock is determined, and further the decoding block in the decodingpicture is decoded. Thus, the technical solution solves the lowprediction efficiency problem of the IBC mode in the related art causedby no filtering process being performed on the picture in the IBC mode,and improves the decoding efficiency and quality of the IBC mode.

In an exemplary embodiment, the second determining module 50 isconfigured to determine a filtering mode applied to the filteringprocess and a filtering parameter applied to the filtering process.Further, the second determining module 50 is configured to determine thefiltering mode and the filtering parameter according to at least one of:preconfigured encoding information, and a part or all of thereconstructed pixel sampling values of the encoding picture.

FIG. 6 is a structural diagram of another decoding processing deviceaccording to an embodiment of the present disclosure. As shown in FIG.6, the second constructing module 54 includes: a third determining unit540, which is configured to take the pixel sampling value as the pixelprediction value; or a fourth determining unit 542, which is configuredto take a weighted sum of a plurality of pixel sampling values as thepixel prediction value. The decoding processing device further includesan obtaining module 56, which is configured to obtain positioninformation of the prediction reference block. The position informationincludes: a relative offset between the decoding block and theprediction reference block and/or an index of a picture where theprediction reference block is located.

An embodiment of the present disclosure further provides an encoder,which includes any one of the encoding processing devices describedabove.

An embodiment of the present disclosure further provides a decoder,which includes any one of the decoding processing devices describedabove.

To better understand the above-mentioned technical solutions, theabove-mentioned technical solutions are described below in conjunctionwith the exemplary embodiments. The exemplary embodiments describedbelow are not used to limit the technical solutions of the embodimentsof the present disclosure.

It is to be noted that the exemplary embodiments described below areonly used to explain the above-mentioned technical solutions, and arenot necessarily in parallel relationship. The prediction block dividingmanner of the IBC is not limited by the embodiments, that is, theprediction block may be a traditional rectangular block or square block,or may be divided by a string of N×1 or 1×N. The string matching methodis a special case when the IBC uses the N×1 or 1×N string divisionmethod.

Optional Embodiment 1

The optional embodiment 1 of the present disclosure provides a methodfor constructing a prediction reference block for a decoding block usingthe IBC mode. The method is used in the decoding process or the decoderusing the IBC mode. The method for constructing the prediction referenceblock for the encoding block using the IBC mode provided by theembodiment is described below.

In step S201, a decoder parses a video bitstream to obtain a predictionparameter of a decoding block.

In a case where the decoding block uses an inter prediction mode and itsreference picture index indicates “the decoding block uses a currentdecoding picture as a reference picture”, the above-mentioned decodingblock is decoded using the IBC mode.

The decoder obtains a relative position offset vector MV between thedecoding block and a reference block thereof.

In step S202, the decoder determines a prediction reference block forthe decoding block according to the prediction parameter.

In the case where the IBC mode is used, the decoder determines aposition of a pixel in the upper left corner of the reference block inthe current decoding picture according to the MV and a position of apixel in the upper left corner of the decoding block.

The prediction reference block is comprised of pixels included in anarea having a shape identical to the decoding block, and the predictionreference block includes the pixel at the upper left corner of thedetermined reference block.

In step S203, the decoder determines a filtering mode and a filteringparameter according to decoding information field known by the decoderand/or pixel sampling values of a part and/or all of the reconstructedpixels in a picture where the prediction reference block is located.

Alternatively, the decoder parses the bitstream and obtains thefiltering mode and the filtering parameter for filtering the pixelsampling values of the pixels in the prediction reference block.

Alternatively, the decoder uses the pixel sampling values of the pixelsin the prediction reference block to estimate the DF filtering strengthand filtering parameter of the prediction reference block.

Alternatively, the decoder uses the DF filtering strength and filteringparameter, obtainable from the bitstream, of the slice and the codingunit where the pixel in the prediction reference block is located.

Alternatively, the decoder uses the SAO parameter, obtainable from thebitstream, of the coding tree unit (CTU) where the pixel in theprediction reference block is located.

In step S204, the decoder filters the pixel in the prediction referenceblock using the determined filtering mode and filtering parameter.

The decoder filters one or more components of the pixel in theprediction reference block according to the determined filtering modeand filtering parameter.

When multiple filters are used, the decoder filters the pixel in theprediction reference block in a preset cascading order of the cascadedfilters or in a cascading order of the cascaded filters indicated in thebitstream.

In step S205, the decoder constructs a prediction value for the samplingvalue in the pixel in the decoding block using the filtered pixelsampling value in the prediction reference block.

Alternatively, the decoder directly takes the filtered pixel samplingvalue in the prediction reference block as the prediction value for thepixel sampling value at the corresponding pixel position in the decodingblock.

Alternatively, in a case where the decoding block uses two or moreprediction reference blocks, the decoder uses a weighted sum of thefiltered pixel sampling values of the two or more prediction referenceblocks as the prediction value for the pixel sampling value at thecorresponding pixel position in the decoding block.

Alternatively, the decoder uses a multiplicative factor and/or anadditive offset to linearly process the prediction value obtained by theabove-mentioned method, and takes the processed prediction value as theprediction value for the decoding block. The decoder obtains values ofthe multiplicative factor and/or the additive offset by parsing thebitstream, or estimates the values of the multiplicative factor and/orthe additive offset according to a reference picture.

Optional Embodiment 2

The optional embodiment 2 is an encoding method corresponding to themethod for constructing the prediction reference block for the decodingblock using the IBC mode described above in the optional embodiment 1,and is applied to an encoding process or an encoder using the IBC mode.A method for constructing a prediction reference block for an encodingblock using the IBC mode is shown in FIG. 7, and includes the stepsdescribed below.

In step S702, an encoder determines a position of a prediction referenceblock for an encoding block.

The position of the prediction reference block for the encoding blockdetermined by the encoder includes: a reference picture in which theprediction reference block is located, and a relative position offsetbetween the prediction reference block and the encoding block.

The encoder uses the designed coder optimization algorithm to search forthe position of the prediction reference block for the current block.

In the embodiment, a picture in which the prediction reference block forthe encoding block using the IBC mode is located is a current encodingpicture.

In step S704, the encoder determines a filtering mode and a filteringparameter according to existing coding information and/or pixel samplingvalues of a part and/or all of the reconstructed pixels of a picture inwhich the prediction reference block is located.

Alternatively, according to the pixel sampling values in the predictionreference block, the encoding mode used by the pixels in the referenceblock and other information, the encoder determines the filtering modeand the filtering parameter for filtering the pixel in the predictionreference block, and writes the relevant filtering parameter into thebitstream.

Alternatively, the encoder uses the pixel sampling values in theprediction reference block to estimate the DF filtering strength andfiltering parameter of the prediction reference block.

Alternatively, the encoder uses the DF filtering strength and filteringparameter of the slice and the coding unit where the encoded pixel inthe prediction reference block is located.

Alternatively, the encoder estimates the SAO parameter of the codingtree unit (CTU) where the pixel in the prediction reference block islocated according to the encoded pixel in the prediction reference blockin the current picture.

In step S706, the encoder filters the pixel in the prediction referenceblock according to the determined filtering mode and filteringparameter.

The encoder filters one or more components of the pixel in theprediction reference block according to the determined filtering modeand filtering parameter.

When multiple filters are used, the encoder filters the pixel in theprediction reference block in a preset cascading order of the cascadedfilters or in a cascading order of the cascaded filters indicated in thebitstream.

In step S708, the encoder constructs a prediction value for the pixelsampling value in the encoding block using the filtered pixel samplingvalue in the prediction reference block.

Alternatively, the encoder directly takes the filtered pixel samplingvalue in the prediction reference block as the prediction value for thepixel sampling value at the corresponding pixel position in the encodingblock.

Alternatively, in a case where the encoding block uses two or moreprediction reference blocks, the encoder uses a weighted sum of thefiltered pixel sampling values in the two or more prediction referenceblocks as the prediction value for the pixel sampling value at thecorresponding pixel position in the encoding block.

Alternatively, the encoder uses a multiplicative factor and/or anadditive offset to linearly process the prediction value obtained usingthe above-mentioned method, and takes the processed prediction value asthe prediction value for the encoding block. The encoder obtains valuesof the multiplicative factor and/or the additive offset by parsing thebitstream, or estimates the values of the multiplicative factor and/orthe additive offset according to a reference picture.

Optional Embodiment 3

The optional embodiment 3 provides a method for constructing aprediction reference block for a decoding block in an inter slice. Themethod may be used for constructing a prediction reference block in theIBC mode, and may also be used for constructing a prediction referenceblock in a conventional inter prediction mode. The method may be appliedto a video decoding process or a decoder. As shown in FIG. 8, the methodfor constructing the prediction reference block for the decoding blockprovided in the embodiment is described below.

In step S802, a decoder parses a video bitstream to obtain a predictionparameter of a decoding block.

In a case where the decoding block uses an inter prediction mode and itsreference picture index (refIdx) indicates “the decoding block uses acurrent decoding picture as a reference picture”, the decoding block isdecoded using the IBC mode. Otherwise, the decoding block is decodedusing the conventional inter prediction mode.

The decoder obtains a relative position offset vector MV between thedecoding block and a reference block thereof.

In step S804, the decoder determines a prediction reference block forthe decoding block according to the prediction parameter.

In the case where the IBC mode is used for the decoding block, thedecoder determines a position of a pixel at the upper left corner of thereference block in the current decoding picture according to the MV anda position of a pixel in the upper left corner at the decoding block. Inthe case where the conventional inter prediction mode is used for thedecoding block, the decoder determines a position of a pixel at theupper left corner of the reference block in a reference pictureindicated by the reference picture index (refIdx) according to the MVand a position of a pixel at the upper left corner of the decodingblock.

The position of the pixel at the upper left corner of the referenceblock may be determined as a vector sum of the MV and an offset vectorbetween the pixel at the upper left corner of the decoding block and thepixel at the upper left corner of the current decoding picture.

The prediction reference block is comprised of pixels in an area havinga shape identical to that of the decoding block including the pixel atthe upper left corner of the determined reference block.

In step S806, the decoder determines a filtering mode and a filteringparameter according to the existing decoding information and/or pixelsampling values of a part and/or all of reconstructed pixels of apicture in which the prediction reference block is located.

In the process of parsing the bitstream, the decoder obtains relatedinformation for determining the filtering mode and the filteringparameter. The information includes at least one of:

indication information indicating whether to filter the pixel in theprediction reference block;

indication information indicating whether to filter the pixel in theprediction reference block in the IBC mode;

indication information indicating whether to filter the pixel in theprediction reference block in the conventional inter prediction mode;

indication information of a filter used in filtering the pixel in theprediction reference block, which at least includes indicationinformation of a filter type;

indication information of a filter used in filtering the pixel in theprediction reference block in the IBC mode;

indication information of a filter used in filtering the pixel in theprediction reference block in the conventional inter prediction mode;

information of a filtering parameter used in filtering the pixel in theprediction reference block, which at least includes information of afilter coefficient;

filtering parameter information of a filter used in filtering the pixelin the prediction reference block in the IBC mode; and

filtering parameter information of a filter used in filtering the pixelin the prediction reference block in the conventional inter predictionmode.

The decoder obtains the above information for determining the filteringmode and the filtering parameter by parsing a bitstream corresponding toa bitstream organizational unit. The bitstream includes at least one of:

one or more parameter set bitstreams;

a slice header information bitstream;

a bitstream corresponding to a block layer data unit where the decodingblock is located;

a bitstream corresponding to a prediction block data unit in thedecoding block; and

a bitstream corresponding to user-defined data and/or a bitstreamcorresponding to supplemental extension information data.

According to the above information for determining the filtering modeand the filtering parameter, the decoder filters the sampling value inthe pixel in the prediction reference block by performing one of theoperation manners described below.

In the operation manner 1: both the prediction reference block in theIBC mode and the prediction reference block in the conventional interprediction mode are filtered, and the same filter is used.

In an operation manner 2: both the prediction reference block in the IBCmode and the prediction reference block in the conventional interprediction mode are filtered, and different filters are used.

In an operation manner 3: the prediction reference block in the IBC modeis filtered, and the prediction reference block in the conventionalinter prediction mode is not filtered.

In an operation manner 4: the prediction reference block in the IBC modeis not filtered, and the prediction reference block in the conventionalinter prediction mode is filtered.

In an operation manner 5: neither the prediction reference block in theIBC mode nor the prediction reference block in the conventional interprediction mode is filtered.

According to the obtained related information for determining thefiltering mode and the filtering parameter, the decoder selects a filterfor filtering the pixel sampling value in the prediction reference blockfrom a filter set allowed for use, and determines the filteringparameter by using one of the methods described below. The filter setallowed for use includes filters which can be used for filtering thedecoding block and/or the prediction reference block for the decodingblock included in the picture/slice where the decoding block is located.

In a method 1 for determining the filter, if the selected filter uses apreset shape and filtering parameter, the preset filter shape and thecorresponding filter parameter are used.

In a method 2 for determining the filter, if the selected filter uses apreset shape, the preset filter shape and the filter parametercorresponding to the filter shape and obtained by parsing the bitstreamare used.

In a method 3 for determining the filter, the filter shape and thecorresponding filter parameter obtained by parsing the bitstream areused.

In a method 4 for determining the filter, the filter shape and thefilter parameter of a decoded block are used.

In a method 5 for determining the filter, the filter shape of thedecoded block and the filter parameter obtained by parsing the bitstreamare used.

In a method 6 for determining the filter, the filter shape and thefiltering parameter to be used are determined according to the decodedpixel sampling value selectively in conjunction with the relatedparameter obtained by parsing the bitstream.

For the method 6 for determining the filter, an example of the filteringmode and the filtering parameter used for filtering the pixel samplingvalue in the prediction reference block for the IBC mode is describedbelow. In the example, the filter set allowed for use includes the DFfilter and/or the SAO filter. The method that may be used to determinefiltering parameters of the DF and/or the SAO includes at least one ofthe methods described below.

The decoder parses the bitstream and obtains the filtering mode and thefiltering parameter for filtering the pixel sampling value in theprediction reference block.

The decoder uses the pixel sampling value in the pixel in the predictionreference block to estimate the DF filtering strength and filteringparameter for the prediction reference block.

The decoder uses the DF filtering strength and filtering parameter,obtainable from the bitstream, of the slice and the coding unit wherethe pixel in the prediction reference block is located.

The decoder uses the SAO parameter, obtainable from the bitstream, ofthe coding tree unit (CTU) where the pixel in the prediction referenceblock is located.

In particular, the decoder may parse the bitstream information and thendetermine whether to use the same filter and filtering parameter tofilter the pixel sampling values in the prediction reference blocks ofall of the decoding blocks using the IBC mode and/or the conventionalinter prediction mode in a decoding picture or a decoding slice. In thisparticular case, the decoder obtains the parameters related to thefiltering process in a manner similar to the above-mentioned manner forthe decoding block. The process is not limited. In an embodiment, thedecoder may filter a prediction reference picture before filtering thedecoding block in the decoding picture or in the decoding slice. In analternative embodiment, in the block layer decoding process, the decoderfilters the prediction reference block used by the decoding block, whichis different from the processing method in which the predictionreference picture is first filtered in the picture layer or in the slicelayer.

In step S808, the decoder uses the determined filtering mode andfiltering parameter to filter the pixel in the prediction referenceblock.

The decoder filters one or more components of the pixel in theprediction reference block according to the determined filtering modeand filtering parameter.

When multiple filters are used, the decoder filters the pixel in theprediction reference block in a preset cascading order of the cascadedfilters or in a cascading order of the cascaded filters indicated in thebitstream.

In step S810, the decoder constructs a prediction value for the pixelsampling value in the decoding block using the filtered pixel samplingvalue in the prediction reference block.

Alternatively, the decoder directly takes the filtered pixel samplingvalue in the prediction reference block as the prediction value for thepixel sampling value at the corresponding pixel position in the decodingblock.

Alternatively, if the decoding block uses two or more predictionreference blocks, the decoder uses a weighted sum of the filtered pixelsampling values of the two or more prediction reference blocks as theprediction value for the pixel sampling value at the correspondingposition in the decoding block.

Alternatively, the decoder uses a multiplicative factor and/or anadditive offset to linearly process the prediction value obtained usingthe above-mentioned method, and takes the processed prediction value asthe prediction value for the decoding block. The decoder obtains valuesof the multiplicative factor and/or the additive offset by parsing thebitstream, or estimates the values of the multiplicative factor and/orthe additive offset according to a reference picture.

Optional Embodiment 4

The optional embodiment 4 is an encoding method corresponding to themethod of constructing a prediction reference block for a decoding blockin an inter slice. The method may be used for constructing a predictionreference block in the IBC mode, and may also be used for constructing aprediction reference block in the conventional inter prediction mode.The method may be applied to a video coding process or an encoder. Themethod of constructing the prediction reference block for the encodingblock provided in the embodiment is described below.

In step S501, an encoder determines a position of a prediction referenceblock for an encoding block.

The position of the prediction reference block for the encoding blockdetermined by the encoder includes: a reference picture in which theprediction reference block is located, and a relative position offset(i.e., MV) between the prediction reference block and the encodingblock.

The encoder uses a designed coder optimization algorithm to search for aposition of the prediction reference block for the current block. Anexample of the encoder optimization algorithm is a motion estimationalgorithm using rate-distortion criteria, and a fast search algorithmcan be used together.

In the embodiment, a picture in which the prediction reference block forthe encoding block using the IBC mode is located is the current encodingblock picture. The picture in which the prediction reference block forthe encoding block using the conventional inter prediction mode islocated is not the current encoding picture.

In step S502, the encoder determines a filtering mode and a filteringparameter according to the existing encoding information and/or pixelsampling values of a part and/or all of the reconstructed pixels of apicture in which the prediction reference block is located.

After the step S501 is completed, the encoder determines the filteringmode and the filtering parameter by using the method in the step S502.Alternatively, the encoder may determine the filtering mode and thefiltering parameter for a candidate reference picture and MV using themethod in the step S502 during the execution of the step S501. Thus, atthe end of the execution of the step S501, the encoder may obtain theposition of the prediction reference block and the filtering mode andfiltering parameter corresponding to the prediction reference block.Nevertheless, in the above two methods, the position of the predictionreference block is known before determining the filtering mode and thefiltering parameters.

The encoder selects a filter for filtering the pixel sampling value inthe pixel in the prediction reference block from a filter set allowedfor use, and determines the filtering parameter. The filter set allowedfor use includes filters which may be used for filtering the encodingblock and/or the prediction reference block for the encoding blockincluded in the picture/slice where the encoding block is located. Thefilter set allowed for use includes at least one of the filter banksdescribed below. Each filter bank may include one or more filters.

A filter bank 1 includes a filter whose filter shape and filterparameter are preset. A filter bank 2 includes a filter whose shape ispreset and whose filtering parameter is determined by the encoder.

A filter bank 3 includes a filter whose shape and filter parameter aredetermined by the encoder.

A filter bank 4 includes a filter using a filter shape and a filterparameter of an encoded block.

A filter bank 5 includes a filter using the filter shape of the encodedblock, and a filter parameter determined by the encoder for the currentencoding block.

A filter bank 6 includes a filter whose shape and filtering parameterare determined according to a pixel sampling value in an encoded pixeland selectively together with the existing encoding information.

The encoder selects the filter from the filter banks. When a filterwhose filter shape and filter parameter are not preset is used, theencoder determines the filter shape and the filter parameter during thefilter selection. The encoder may use a predetermined optimizationcriterion to select, from multiple groups of candidate filters ormultiple candidate filters, a filter and a shape and filter parameterthereof that may enable the optimization criterion to reach an optimalor locally optimal state. A common example of the optimization criterionis the rate-distortion optimization criterion. The encoder may use thisoptimization criterion method to select an optimal or locally optimalfilter. The encoder writes identification information of the selectedfilter and, if necessary, the filter shape and the filter parameter tothe bitstream. Optionally, the encoder may filter the predictionreference block using multiple cascaded different filters. In this case,the encoder may use a preset cascading order of the cascaded filters,for example, the DF filtering is performed first, and then the SAOfiltering is performed. The encoder may also use a rate-distortionoptimization method to determine a flexible cascading order of thecascaded filters and write information related to the cascading order ofthe cascaded filters into the bitstream.

An example of a method that may be used by the encoder to determine thefilter shape and filtering parameter in the above filter bank isdescribed below.

For the filter bank 1 and/or the filter bank 4 described above, theencoder does not need to perform any algorithm for determining thefilter shape and the filter parameter.

For the filter bank 2, the filter bank 3 and/or the filter bank 5, theencoder first determines the undetermined filter shape and/or theundetermined filter parameter first. An example of the available methodis to determine a filter shape and/or a filter parameter capable ofminimizing an error between the filtered prediction reference block andthe above-mentioned encoding block.

For the filter bank 6 described above, an example of the filtering modeand the filtering parameter used for filtering the pixel sampling valuein the prediction reference block for the IBC mode is described below.In the example, the filter set allowed for use includes the DF filterand/or the SAO filter. The method that may be used to determinefiltering parameters of the DF filter and/or the SAO filter includes atleast one of the methods described below.

According to the pixel sampling value in the pixel in the predictionreference block and the encoding mode used by the pixel in the referenceblock, the encoder determines the filtering mode and the filteringparameter for filtering the pixel in the prediction reference block, andwrites the relevant filtering parameter into the bitstream.

The encoder uses the pixel sampling value in the pixel in the predictionreference block to estimate the DF filtering strength and filteringparameter for the prediction reference block.

The encoder uses the DF filtering strength and filtering parameter ofthe slice and the coding unit where the encoded pixel in the predictionreference block is located.

The encoder estimates the SAO parameter of the coding tree unit (CTU)where the pixel in the prediction reference block is located accordingto the encoded pixel in the prediction reference block in the currentpicture.

In addition to the filter shape and the filtering parameter, the encoderneeds to determine corresponding control indication information for thefiltering process and write these control indication information intothe bitstream. The encoder may determine the above-mentioned controlindication information using the rate-distortion optimization method.The control indication information of the filtering process includes atleast one of:

indication information indicating whether to filter the pixel in theprediction reference block;

indication information indicating whether to filter the pixel in theprediction reference block in the IBC mode;

indication information indicating whether to filter the pixel in theprediction reference block in the conventional inter prediction mode;

indication information of a filter used in filtering the pixel in theprediction reference block, including at least indication information ofa filter type;

indication information of a filter used in filtering the pixel in theprediction reference block in the IBC mode;

indication information of a filter used in filtering the pixel in theprediction reference block in the conventional inter prediction mode;

filtering parameter information of a filter used in filtering the pixelin the prediction reference block, including at least information of afilter coefficient;

filtering parameter information of a filter used in filtering the pixelin the prediction reference block in the IBC mode; and

filtering parameter information of a filter used in filtering the pixelin the prediction reference block in the conventional inter predictionmode.

The encoder writes the foregoing control indication information into abitstream corresponding to a bitstream organizational unit. Thebitstream includes at least one of:

one or more parameter set bitstreams;

a slice header information bitstream;

a bitstream corresponding to a block layer data unit where the encodingblock is located;

a bitstream corresponding to a prediction block data unit in theencoding block; and

a bitstream corresponding to user-defined data and/or a bitstreamcorresponding to supplemental extension information data.

Corresponding to different control indication information, the encodermay filter the sampling value in the pixel in the prediction referenceblock in one of the following operation manners.

In an operation manner 1, both the prediction reference block in the IBCmode and the prediction reference block in the conventional interprediction mode are filtered, and the same filter is used.

In an operation manner 2, both the prediction reference block in the IBCmode and the prediction reference block in the conventional interprediction mode are filtered, while different filters are used.

In an operation manner 3, the prediction reference block in the IBC modeis filtered, while the prediction reference block in the conventionalinter prediction mode is not filtered.

In an operation manner 4, the prediction reference block in the IBC modeis not filtered, while the prediction reference block in theconventional inter prediction mode is filtered.

In an operation manner 5, neither the prediction reference block in theIBC mode nor the prediction reference block in the conventional interprediction mode is filtered.

In particular, optionally, the encoder may filter the pixel samplingvalue in the pixel in the prediction reference block for the encodingblock by using the method of determining and controlling the filterparameter for the picture and/or the slice layer, that is, in theencoding picture or the encoding slice, all of the encoding blocks usingthe IBC mode and/or the conventional inter prediction mode use the samefilter and filter parameter. In this particular case, the encoderobtains the parameters related to the filtering process in a mannersimilar to the above-mentioned manner for the decoding block. Theprocess is not limited. In an embodiment, the encoder may performfiltering process on the prediction reference picture before processingthe encoding block in the encoding picture or in the encoding slice. Inan alternative embodiment, the encoder performs filtering on theprediction reference block used by the encoding block in the process ofencoding the block layer, which is different from the processing methodin which the prediction reference picture is first filtered in thepicture layer or in the slice layer.

In step S503, the encoder filters the pixel in the prediction referenceblock according to the determined filtering mode and filteringparameter.

The encoder filters one or more components of the pixel in theprediction reference block according to the determined filtering modeand filtering parameter.

When multiple filters are used, the encoder filters the pixel in theprediction reference block in a preset cascading order of the cascadedfilters or in a cascading order of the cascaded filters indicated in thebitstream.

In step S504, the encoder constructs a prediction value for the pixelsampling value in the pixel in the encoding block using the filteredpixel sampling value in the prediction reference block.

Alternatively, the encoder directly takes the filtered pixel samplingvalue in the prediction reference block as the prediction value for thepixel sampling value at the corresponding position in the encodingblock.

Alternatively, in a case where the encoding block uses two or moreprediction reference blocks, the encoder uses a weighted sum of thefiltered pixel sampling values of the two or more prediction referenceblocks as the prediction value for the pixel sampling value at thecorresponding position in the encoding block.

Alternatively, the encoder uses a multiplicative factor and/or anadditive offset to linearly process the prediction value obtained usingthe above-mentioned method, and takes the processed prediction value asthe prediction value for the encoding block. The encoder obtains valuesof the multiplicative factor and/or the additive offset by parsing thebitstream, or estimates the values of the multiplicative factor and/orthe additive offset according to a reference picture.

Optional Embodiment 5

The optional embodiment 5 provides an embodiment of an electronic deviceincluding an encoder and/or a decoder.

The encoder generates a video bitstream using the encoder implementationof any one of the foregoing optional embodiment 2 and optionalembodiment 4.

The decoder decodes the video bitstream using the decoder implementationof any one of the foregoing optional embodiment 1 and optionalembodiment 3.

The electronic device in the optional embodiment 5 may be a bitstreamgenerating device and a bitstream receiving and playing device in avideo communication application, such as a mobile phone, a computer, aserver, a settop box, a portable mobile terminal, a digital videocamera, a television broadcasting system device, and the like.

In summary, the embodiments of the present disclosure achieve thefollowing technical effects. The low prediction efficiency problem ofthe IBC mode in the related art caused by no filtering process performedon the picture in the IBC mode is solved, and the decoding efficiencyand quality of the IBC mode are improved.

Another embodiment further provides a software configured to execute thetechnical solutions described in the above-mentioned embodiments andoptional embodiments.

Another embodiment further provides a storage medium configured to storecomputer-executable instructions. The instructions, when executed by aprocessor, implement the encoding processing method described above.

Another embodiment further provides a storage medium configured to storecomputer-executable instructions. The instructions, when executed by aprocessor, implement the decoding processing method described above.

The storage medium includes, but is not limited to, an optical disk, afloppy disk, a hard disk, an erasable memory, and the like. It is to benoted that the terms “first”, “second” and the like in the description,claims and drawings of the present disclosure are used to distinguishbetween similar objects and are not necessarily used to describe aparticular order or sequence. It is to be understood that the objectsused in this way are interchangeable where appropriate so thatembodiments of the present disclosure described herein may also beimplemented in a sequence not shown or described herein. In addition,the terms “including”, “having” or any other variations thereofdescribed herein are intended to encompass a non-exclusive inclusion.For example, a process, method, system, product or device that includesa series of steps or elements may include not only the expressly listedsteps or elements but also other steps or elements that are notexpressly listed or are inherent to such a process, method, system,product or device.

Apparently, it is to be understood by those skilled in the art that eachof the above-mentioned modules or steps of the embodiments of thepresent disclosure may be implemented by a general-purpose computingapparatus, the modules or steps may be concentrated on a singlecomputing apparatus or distributed on a network composed of multiplecomputing apparatuses, and alternatively, the modules or steps may beimplemented by program codes executable by the computing apparatuses, sothat the modules or steps may be stored in a storage apparatus andexecuted by the computing apparatuses. In some circumstances, theillustrated or described steps may be executed in sequences differentfrom those described herein, or the modules or steps may be made intovarious integrated circuit modules separately, or multiple modules orsteps therein may be made into a single integrated circuit module forimplementation. In this way, the embodiments of the present disclosureare not limited to any specific combination of hardware and software.

The above are only optional embodiments of the present disclosure andare not intended to limit the present application, and for those skilledin the art, the present application may have various modifications andvariations. Any modifications, equivalent substitutions, improvementsand the like made within the spirit and principle of the presentapplication should fall within the scope of the present application.

INDUSTRIAL APPLICABILITY

With the technical solutions provided by the embodiments of the presentdisclosure, the problem, in the related art, that no filtering processis performed on the picture in the IBC mode and thus the predictionefficiency of the IBC mode is low is solved, and the encoding efficiencyand encoding quality of the IBC mode are improved.

1. An encoding processing method, comprising: determining a filtering process to be applied to a pixel in a prediction reference block for an encoding block; filtering the pixel in the prediction reference block according to the filtering process; constructing a pixel prediction value for the encoding block according to a filtered pixel sampling value in the prediction reference block; and encoding the encoding block according to the pixel prediction value.
 2. The method of claim 1, wherein the determining the filtering process to be applied to the pixel in the prediction reference block for the encoding block comprises: determining a filtering mode and a filtering parameter of the filtering process.
 3. The method of claim 2, wherein determining the filtering mode and the filtering parameter of the filtering process comprises: determining the filtering mode and the filtering parameter according to at least one of the following information: encoding parameter information of an encoded block, a part of or all of reconstructed pixel sampling values of a picture in which the prediction reference block is located, and a part or all of pixel sampling values of a picture in which the encoding block is located.
 4. (canceled)
 5. (canceled)
 6. The method of claim 3, wherein determining the filtering mode and the filtering parameter of the filtering process comprises: determining the filtering mode and the filtering parameter used for the prediction reference block for the encoding block by using a sample value in an encoded pixel and encoding parameter information of the encoded block.
 7. The method of claim 1, wherein filtering the pixel in the prediction reference block according to the filtering process comprises: filtering one or more components of the pixel in the prediction reference block according to the determined filtering process.
 8. The method of claim 1, wherein constructing the pixel prediction value according to the pixel sampling value in the prediction reference block processed by the filtering process comprises: taking the pixel sampling value as the pixel prediction value; or taking a weighted sum of a plurality of pixel sampling values as the pixel prediction value.
 9. (canceled)
 10. (canceled)
 11. The method of claim 2, wherein in response to determining that the filtering mode indicates that the pixel in the prediction reference block is filtered by using a plurality of cascaded filters, the pixel in the prediction reference block is filtered using a preset cascading order of the cascaded filters or a cascading order of the cascaded filters indicated by the filtering mode.
 12. (canceled)
 13. (canceled)
 14. (canceled)
 15. A decoding processing method, comprising: determining a filtering process to be applied to a pixel in a prediction reference block for a decoding block; processing a pixel sampling value in the prediction reference block by using the determined filtering process; and constructing a pixel prediction value for the decoding block by using the processed pixel sampling value.
 16. (canceled)
 17. The method of claim 15, wherein determining the filtering process to be applied to the pixel in the prediction reference block comprises: determining a filtering mode and a filtering parameter of the filtering process.
 18. (canceled)
 19. (canceled)
 20. The method of claim 17, wherein the determining the filtering mode and the filtering parameter of the filtering process comprises: determining the filtering mode and the filtering parameter used for the prediction reference block for the decoding block by using a decoded pixel sample value and decoding parameter information of a decoded block.
 21. The method of claim 15, wherein processing the pixel sampling value in the prediction reference block by using the determined filtering process comprises: filtering one or more components of the pixel in the prediction reference block according to the determined filtering process.
 22. The method of claim 15, wherein constructing the pixel prediction value by using the processed pixel comprises: taking the pixel sampling value as the pixel prediction value; or taking a weighted sum of a plurality of pixel sampling values as the pixel prediction value.
 23. (canceled)
 24. The method of claim 17, wherein when the filtering mode indicates that the pixel in the prediction reference block is filtered by using a plurality of cascaded filters, the pixel in the prediction reference block is filtered in a set cascading order of the cascaded filters, wherein the set cascading order of the cascaded filters is a preset cascading order of the cascaded filters, or a cascading order of the cascaded filters indicated by the filtering mode. 25-31. (canceled)
 32. An encoder, comprising: a processor; and a memory communicably connected with the processor and for storing instructions executable by the processor, wherein execution of the instructions by the processor causes the processor to perform an encoding method, wherein the encoding method comprises: determining a filtering process to be applied to a pixel in a prediction reference block for an encoding block; filtering the pixel in the prediction reference block according to the filtering process; constructing a pixel prediction value for the encoding block according to a filtered pixel sampling value in the prediction reference block; and encoding the encoding block according to the pixel prediction value.
 33. A decoder, comprising: a processor; and a memory communicably connected with the processor and for storing instructions executable by the processor, wherein execution of the instructions by the processor causes the processor to perform a decoding method, wherein the decoding method comprises: determining a filtering process to be applied to a pixel in a prediction reference block for a decoding block; processing a pixel sampling value in the prediction reference block by using the determined filtering process; and constructing a pixel prediction value for the decoding block by using the processed pixel sampling value.
 34. The encoder of claim 32, wherein the determining the filtering process to be applied to the pixel in the prediction reference block for the encoding block comprises: determining a filtering mode and a filtering parameter according to at least one of the following information: encoding parameter information of an encoded block, a part of or all of reconstructed pixel sampling values of a picture in which the prediction reference block is located, and a part or all of pixel sampling values of a picture in which the encoding block is located.
 35. The decoder of claim 33, wherein the determining the filtering process to be applied to the pixel in the prediction reference block for the decoding block comprises: determining a filtering mode and a filtering parameter of the filtering process.
 36. The decoder of claim 35, wherein the determining the filtering mode and the filtering parameter of the filtering process comprises: determining the filtering mode and the filtering parameter used for the prediction reference block for the decoding block by using a decoded pixel sample value and decoding parameter information of a decoded block.
 37. The decoder of claim 33, wherein processing the pixel sampling value in the prediction reference block by using the determined filtering process comprises: filtering one or more components of the pixel in the prediction reference block according to the determined filtering process.
 38. The decoder of claim 33, wherein constructing the pixel prediction value by using the processed pixel comprises: taking the pixel sampling value as the pixel prediction value; or taking a weighted sum of a plurality of pixel sampling values as the pixel prediction value.
 39. The decoder of claim 35, wherein when the filtering mode indicates that the pixel in the prediction reference block is filtered by using a plurality of cascaded filters, the pixel in the prediction reference block is filtered in a set cascading order of the cascaded filters, wherein the set cascading order of the cascaded filters is a preset cascading order of the cascaded filters, or a cascading order of the cascaded filters indicated by the filtering mode. 